Termination Proof Script
Consider the TRS R consisting of the rewrite rules
|
1: |
|
a__zeros |
→ cons(0,zeros) |
2: |
|
a__tail(cons(X,XS)) |
→ mark(XS) |
3: |
|
mark(zeros) |
→ a__zeros |
4: |
|
mark(tail(X)) |
→ a__tail(mark(X)) |
5: |
|
mark(cons(X1,X2)) |
→ cons(mark(X1),X2) |
6: |
|
mark(0) |
→ 0 |
7: |
|
a__zeros |
→ zeros |
8: |
|
a__tail(X) |
→ tail(X) |
|
There are 5 dependency pairs:
|
9: |
|
A__TAIL(cons(X,XS)) |
→ MARK(XS) |
10: |
|
MARK(zeros) |
→ A__ZEROS |
11: |
|
MARK(tail(X)) |
→ A__TAIL(mark(X)) |
12: |
|
MARK(tail(X)) |
→ MARK(X) |
13: |
|
MARK(cons(X1,X2)) |
→ MARK(X1) |
|
The approximated dependency graph contains one SCC:
{9,11-13}.
-
Consider the SCC {9,11-13}.
By taking the AF π with
π(A__TAIL) = π(MARK) = 1 together with
the lexicographic path order with
precedence a__tail ≻ a__zeros ≻ 0,
a__zeros ≻ cons,
a__zeros ≻ zeros
and a__tail ≈ tail ≈ mark,
the rules in {4,8,11}
are weakly decreasing and
the rules in {1-3,5-7,9,12,13}
are strictly decreasing.
Hence the TRS is terminating.
Tyrolean Termination Tool (0.04 seconds)
--- May 4, 2006